// The quote can be a return

#include <iostream>
using namespace std;


int value = 0;

int& foo( ) {
	return value;
}

int& bar( ) {
	static int values = 0;
	cout << "values = " << values << endl;
	return values;
}

int& hum( ) {
	int* pn = new int;
	return *pn;
}

int& fun( int& x ) {
	return x;
}


int main( void ) {
	foo( ) = 100;
	cout << "value = " << value << endl;
	
	bar( ) = 200;
	bar( );

	hum( ) = 300;
	
	int a_value = 0;
	fun( a_value ) = 400;
	cout << "a_value = " << a_value << endl;


	return 0;
}

